package ae.pcfc.etks.online.web.model;

import java.io.Serializable;
import java.util.List;

import org.hibernate.validator.constraints.NotEmpty;

import ae.pcfc.etks.online.common.vo.ServiceAttributesVO;

public class Service extends BaseModel implements Serializable{

	/**
	 * 
	 */
	private static final long serialVersionUID = -935040754738144465L;

	String strServiceID;

	@NotEmpty
	String strServiceNameEng;

	@NotEmpty
	String strServiceNameArb;

	@NotEmpty
	String strServiceOwner;

	List<String> arrServiceDeptsCode;

	String strServiceRole;

	List<Integer> arrServiceRole;

	String strDefaultService;
	
	String strServiceType;

	String strServiceURL;
	
	String strServiceSecRole;
	
	Integer iAttrId;

	String strServiceAttributeNameEng;

	String strServiceAttributeNameArb;

	String strNeccessity;
	
	String strStatus;

	List<ServiceAttributesVO> arrServiceAttributes;

	public List<ServiceAttributeValues> getArrServiceAttributeValues() {
		return arrServiceAttributeValues;
	}

	public void setArrServiceAttributeValues(List<ServiceAttributeValues> arrServiceAttributeValues) {
		this.arrServiceAttributeValues = arrServiceAttributeValues;
	}

	List<ServiceAttributeValues> arrServiceAttributeValues;

	public Service() {

	}

	/**
	 * @return the strServiceID
	 */
	public String getStrServiceID() {
		return strServiceID;
	}

	/**
	 * @param strServiceID
	 *            the strServiceID to set
	 */
	public void setStrServiceID(String strServiceID) {
		this.strServiceID = strServiceID;
	}

	/**
	 * @return the strServiceNameEng
	 */
	public String getStrServiceNameEng() {
		return strServiceNameEng;
	}

	/**
	 * @param strServiceNameEng
	 *            the strServiceNameEng to set
	 */
	public void setStrServiceNameEng(String strServiceNameEng) {
		this.strServiceNameEng = strServiceNameEng;
	}

	/**
	 * @return the strServiceNameArb
	 */
	public String getStrServiceNameArb() {
		return strServiceNameArb;
	}

	/**
	 * @param strServiceNameArb
	 *            the strServiceNameArb to set
	 */
	public void setStrServiceNameArb(String strServiceNameArb) {
		this.strServiceNameArb = strServiceNameArb;
	}

	/**
	 * @return the strServiceOwner
	 */
	public String getStrServiceOwner() {
		return strServiceOwner;
	}

	/**
	 * @param strServiceOwner
	 *            the strServiceOwner to set
	 */
	public void setStrServiceOwner(String strServiceOwner) {
		this.strServiceOwner = strServiceOwner;
	}

	/**
	 * @return the arrServiceDeptsCode
	 */
	public List<String> getArrServiceDeptsCode() {
		return arrServiceDeptsCode;
	}

	/**
	 * @param arrServiceDeptsCode
	 *            the arrServiceDeptsCode to set
	 */
	public void setArrServiceDeptsCode(List<String> arrServiceDeptsCode) {
		this.arrServiceDeptsCode = arrServiceDeptsCode;
	}

	/**
	 * @return the strServiceRole
	 */
	public String getStrServiceRole() {
		return strServiceRole;
	}

	/**
	 * @param strServiceRole
	 *            the strServiceRole to set
	 */
	public void setStrServiceRole(String strServiceRole) {
		this.strServiceRole = strServiceRole;
	}

	public String getStrServiceSecRole() {
		return strServiceSecRole;
	}

	public void setStrServiceSecRole(String strServiceSecRole) {
		this.strServiceSecRole = strServiceSecRole;
	}

	/**
	 * @return the arrServiceRole
	 */
	public List<Integer> getArrServiceRole() {
		return arrServiceRole;
	}

	/**
	 * @param arrServiceRole
	 *            the arrServiceRole to set
	 */
	public void setArrServiceRole(List<Integer> arrServiceRole) {
		this.arrServiceRole = arrServiceRole;
	}

	/**
	 * @return the strDefaultService
	 */
	public String getStrDefaultService() {
		return strDefaultService;
	}

	/**
	 * @param strDefaultService
	 *            the strDefaultService to set
	 */
	public void setStrDefaultService(String strDefaultService) {
		this.strDefaultService = strDefaultService;
	}

	/**
	 * @return the strServiceURL
	 */
	public String getStrServiceURL() {
		return strServiceURL;
	}

	/**
	 * @param strServiceURL
	 *            the strServiceURL to set
	 */
	public void setStrServiceURL(String strServiceURL) {
		this.strServiceURL = strServiceURL;
	}

	/**
	 * @return the strServiceAttributeNameEng
	 */
	public String getStrServiceAttributeNameEng() {
		return strServiceAttributeNameEng;
	}

	/**
	 * @param strServiceAttributeNameEng
	 *            the strServiceAttributeNameEng to set
	 */
	public void setStrServiceAttributeNameEng(String strServiceAttributeNameEng) {
		this.strServiceAttributeNameEng = strServiceAttributeNameEng;
	}

	/**
	 * @return the strServiceAttributeNameArb
	 */
	public String getStrServiceAttributeNameArb() {
		return strServiceAttributeNameArb;
	}

	/**
	 * @param strServiceAttributeNameArb
	 *            the strServiceAttributeNameArb to set
	 */
	public void setStrServiceAttributeNameArb(String strServiceAttributeNameArb) {
		this.strServiceAttributeNameArb = strServiceAttributeNameArb;
	}

	/**
	 * @return the strNeccessity
	 */
	public String getStrNeccessity() {
		return strNeccessity;
	}

	/**
	 * @param strNeccessity
	 *            the strNeccessity to set
	 */
	public void setStrNeccessity(String strNeccessity) {
		this.strNeccessity = strNeccessity;
	}

	/**
	 * @return the arrServiceAttributes
	 */
	public List<ServiceAttributesVO> getArrServiceAttributes() {
		return arrServiceAttributes;
	}

	/**
	 * @param arrServiceAttributes
	 *            the arrServiceAttributes to set
	 */
	public void setArrServiceAttributes(List<ServiceAttributesVO> arrServiceAttributes) {
		this.arrServiceAttributes = arrServiceAttributes;
	}

	public Integer getiAttrId() {
		return iAttrId;
	}

	public void setiAttrId(Integer iAttrId) {
		this.iAttrId = iAttrId;
	}

	public String getStrServiceType() {
		return strServiceType;
	}

	public void setStrServiceType(String strServiceType) {
		this.strServiceType = strServiceType;
	}

	public String getStrStatus() {
		return strStatus;
	}

	public void setStrStatus(String strStatus) {
		this.strStatus = strStatus;
	}
	
	public void reset() {
		strServiceNameEng = null;
		strServiceNameArb = null;
		strServiceOwner = null;
		arrServiceDeptsCode = null;
		strServiceRole = null;
		arrServiceRole = null;
		strDefaultService = null;
		strServiceType = null;
		strServiceAttributeNameEng = null;
		strServiceAttributeNameArb = null;
		strNeccessity = null;
		arrServiceAttributes = null;
		iAttrId = null;
		strServiceURL = null;
		strServiceSecRole = null;
	}
}
